gridpack::math::DAESolverInterface< T, I > Class Template Reference

#include <dae_solver_interface.hpp>

Inheritance diagram for gridpack::math::DAESolverInterface< T, I >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef DAEBuilder< T, I >
::VectorType 
VectorType
typedef DAEBuilder< T, I >
::MatrixType 
MatrixType
typedef DAEBuilder< T, I >
::Jacobian 
JacobianBuilder
typedef DAEBuilder< T, I >
::Function 
FunctionBuilder
typedef DAEBuilder< T, I >
::StepFunction 
StepFunction

Public Member Functions

 DAESolverInterface (void)
 Default constructor.
virtual ~DAESolverInterface (void)
 Destructor.
void initialize (const double &t0, const double &deltat0, VectorType &x0)
 Initialize the solver.
void solve (double &maxtime, int &maxsteps)
 Solve the system to when end_time or maxsteps is exceeded.
void preStep (StepFunction &f)
 Set a function to call before each time step.
void postStep (StepFunction &f)
 Set a function to call before each time step.

template<typename T, typename I = int>
class gridpack::math::DAESolverInterface< T, I >


Member Typedef Documentation

template<typename T, typename I = int>
typedef DAEBuilder<T, I>::Function gridpack::math::DAESolverInterface< T, I >::FunctionBuilder
template<typename T, typename I = int>
typedef DAEBuilder<T, I>::Jacobian gridpack::math::DAESolverInterface< T, I >::JacobianBuilder
template<typename T, typename I = int>
typedef DAEBuilder<T, I>::MatrixType gridpack::math::DAESolverInterface< T, I >::MatrixType
template<typename T, typename I = int>
typedef DAEBuilder<T, I>::StepFunction gridpack::math::DAESolverInterface< T, I >::StepFunction
template<typename T, typename I = int>
typedef DAEBuilder<T, I>::VectorType gridpack::math::DAESolverInterface< T, I >::VectorType

Constructor & Destructor Documentation

template<typename T, typename I = int>
gridpack::math::DAESolverInterface< T, I >::DAESolverInterface ( void   ) 

Default constructor.

template<typename T, typename I = int>
virtual gridpack::math::DAESolverInterface< T, I >::~DAESolverInterface ( void   )  [virtual]

Destructor.


Member Function Documentation

template<typename T, typename I = int>
void gridpack::math::DAESolverInterface< T, I >::initialize ( const double &  t0,
const double &  deltat0,
VectorType x0 
)

Initialize the solver.

Parameters:
t0 start time, corresponding to x0
deltat0 initial time step
x0 initial solution corresponding to t0

Reimplemented in gridpack::math::DAESolverT< T, I >.

template<typename T, typename I = int>
void gridpack::math::DAESolverInterface< T, I >::postStep ( StepFunction f  ) 

Set a function to call before each time step.

template<typename T, typename I = int>
void gridpack::math::DAESolverInterface< T, I >::preStep ( StepFunction f  ) 

Set a function to call before each time step.

template<typename T, typename I = int>
void gridpack::math::DAESolverInterface< T, I >::solve ( double &  maxtime,
int &  maxsteps 
)

Solve the system to when end_time or maxsteps is exceeded.

This solves the system from the initial time specified by initialize() or continues the solution from the end time of the previous call to solve(). After the solution completes, the solution is placed back in the Vector passed to initialize()

Parameters:
maxtime time at which solution is to end (in); actual time at which solution ended (out)
maxsteps maximum number of time steps to perform (in); actual number of time steps performed
solution system solution at maxtime (out)

Reimplemented in gridpack::math::DAESolverT< T, I >.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 3 Feb 2020 for GridPACK by  doxygen 1.6.1